package me.keiwu.user.service;

import me.keiwu.pub.data.ResponseV2;
import me.keiwu.user.domain.Medal;
import me.keiwu.user.domain.MedalPresent;
import org.springframework.data.domain.Page;

import java.util.List;

/**
 * Created by kei on 30/01/2018.
 */
public interface MedalService {

    ResponseV2 exchangeMedal(Long userId, Integer medalId);

    Page<Medal> findAllMedals(Long userId, int page, int size);

    Page<Medal> findAllMedals(int page, int size);

    ResponseV2 displayUserMedal(Long userId, Integer medalId, boolean display);


    Medal saveMedal(Integer medalId, String name, String url, Integer cost);

    ResponseV2 medalPresentContact(Long userId, String nickName, Integer medalId, String name, String telephone, String address, String zip);

    Medal shelve(Integer medalId, boolean shelve);

    MedalPresent sendMedalPresent(Integer presentId);

    Page<MedalPresent> listPresent(Integer page, Integer size);

    List<MedalPresent> listPresent();

    MedalPresent presentDetail(Integer presentId);

}
